Advertisement
Guest User

zespolone

a guest
May 22nd, 2019
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.63 KB | None | 0 0
  1. #pragma once
  2.  
  3.  
  4. using namespace std;
  5.  
  6. class Zespolona
  7. {
  8. private:
  9.     int Rzeczywista;
  10.     int czescZespolona; //czesc zespolona
  11.     int potegaI = 1 ; // potega czesci zespolonej, jesli parzysta, mnozenie przez -1
  12.  
  13. public:
  14.    
  15.     Zespolona()
  16.     {
  17.         this->Rzeczywista = 0;
  18.         this -> czescZespolona = 0;
  19.     }
  20.     Zespolona(int x, int y) //czesc rzeczywista, czesc zespolona
  21.     {
  22.         this->Rzeczywista = x;
  23.         this->czescZespolona = y;
  24.     }
  25.     Zespolona(int x, int y, int p)
  26.     {
  27.         this->Rzeczywista = x;
  28.         this->czescZespolona = y;
  29.         this->potegaI = p;
  30.         if (potegaI % 2 == 0)
  31.         {
  32.             czescZespolona *= -1;
  33.             Rzeczywista += czescZespolona;
  34.             czescZespolona = NULL;
  35.             potegaI = 1;
  36.         }
  37.     }
  38.  
  39.     Zespolona operator+(Zespolona second)
  40.     {
  41.         Zespolona wynik;
  42.  
  43.         wynik.Rzeczywista = Rzeczywista + second.Rzeczywista;
  44.         wynik.czescZespolona = czescZespolona + second.czescZespolona;
  45.  
  46.         return wynik;
  47.     }
  48.     Zespolona operator-(Zespolona second)
  49.     {
  50.         Zespolona wynik;
  51.         wynik.Rzeczywista = Rzeczywista - second.Rzeczywista;
  52.         wynik.czescZespolona = czescZespolona - second.czescZespolona;
  53.         return wynik;
  54.     }
  55.     Zespolona operator*(Zespolona second)
  56.     {
  57.         Zespolona wynik;
  58.         wynik.Rzeczywista = Rzeczywista * second.Rzeczywista;
  59.         wynik.czescZespolona = czescZespolona * second.czescZespolona;
  60.         return wynik;
  61.     }
  62.     Zespolona operator*(int liczba)
  63.     {
  64.         Zespolona wynik;
  65.         wynik.Rzeczywista = Rzeczywista * liczba;
  66.         wynik.czescZespolona = czescZespolona * liczba;
  67.         return wynik;
  68.     }
  69.  
  70.     friend ostream& operator<< (std::ostream& stream, const Zespolona& XYZ) {
  71.         stream << XYZ.Rzeczywista << " + i" << XYZ.czescZespolona;
  72.         return stream;
  73.     }
  74.  
  75.    
  76.  
  77. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement